package com.htgd.gardenexpo.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.util.Date;
//import io.swagger.annotations.ApiModel;
//import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 * 主题活动表
 * </p>
 *
 * @author author
 * @since 2024-02-06
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("ge_con_calendar")
@ApiModel(value="GeConCalendar对象", description="主题活动表")
public class GeConCalendar implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "文章内容主键")
    @TableId(value = "new_id", type = IdType.AUTO)
    private Integer newId;

    @ApiModelProperty(value = "新闻标题")
    private String newTitle;

    @ApiModelProperty(value = "新闻内容")
    private String newContent;

    @ApiModelProperty(value = "缩略图")
    private String newThumbnail;

    @ApiModelProperty(value = "关键字")
    private String newKeywords;

    @ApiModelProperty(value = "创建时间")
    @JsonFormat(shape = JsonFormat.Shape.NUMBER, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX")
    private Date createtime;

    @ApiModelProperty(value = "发布时间")
    @JsonFormat(shape = JsonFormat.Shape.NUMBER, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX")
    private Date releasetime;

    @ApiModelProperty(value = "审核时间")
    @JsonFormat(shape = JsonFormat.Shape.NUMBER, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX")
    private Date authtime;

    @ApiModelProperty(value = "点击量")
    private Integer hit;

    @ApiModelProperty(value = "新闻描述")
    private String newDescription;

    @ApiModelProperty(value = "新闻排序")
    private Integer sort;

    @ApiModelProperty(value = "是否置顶 0.否 1.是")
    private Integer isTop;

    @ApiModelProperty(value = "状态 0.待审核 1.已审核 2.审核失败 3.已发布 -1.已删除 4.未提交")
    private String status;

    @ApiModelProperty(value = "素材类型")
    private Integer materialTypeId;

    @ApiModelProperty(value = "素材地址")
    private String pathUrl;

    @ApiModelProperty(value = "新闻创建者id")
    private Integer createUserId;

    @ApiModelProperty(value = "新闻作者")
    private String createUser;

    @ApiModelProperty(value = "新闻审核人员id")
    private Integer authUserId;

    @ApiModelProperty(value = "新闻审核者")
    private String authUser;

    @ApiModelProperty(value = "是否发布到首页 0.否  1.是")
    private Integer isHome;

    @ApiModelProperty(value = "显示状态  0.隐藏 1.显示")
    private Integer isDisplay;

    private Integer editorId;

    private Integer publisherId;

    @ApiModelProperty(value = "分类")
    private String type;

    @ApiModelProperty(value = "活动开始时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date startTime;

    @ApiModelProperty(value = "活动结束时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date endTime;

    @ApiModelProperty(value = "活动地点")
    private String place;
    @ApiModelProperty(value = "描述")
    private String description;

    /**
     * 上传文件的ID(以英文,隔开)
     */
    @TableField(exist = false)
    private String uploadIds="";

    /**
     * 审核失败的反馈信息
     */
    @TableField(exist = false)
    private String feedback="";

    /**
     * 发布人名称
     */
    @TableField(exist = false)
    private String publisherName;
    /**
     * 编辑人名称
     */
    @TableField(exist = false)
    private String editorName;

    @ApiModelProperty(value = "是否推荐('0':否，'1':是)")
    private String recommendType;

    @ApiModelProperty(value = "是否推荐文本")
    @TableField(exist = false)
    private String recommendTypeText;

}
